home *** CD-ROM | disk | FTP | other *** search
/ Aminet 24 / Aminet 24 (1998)(GTI - Schatztruhe)[!][Apr 1998].iso / Aminet / dev / c / AmiVoGL_MDEV.lha / Makefile.unix < prev    next >
Makefile  |  1992-03-03  |  4KB  |  228 lines

  1. #
  2. # Makefile for vogl (On non SGI-GL machines, if you are on an SGI and
  3. # plan to use the real GL (as opposed to X11 on an SGI), then use the 
  4. # Makefile.sgi as this will only compile the Hershey library and the examples)
  5. #
  6. # Usage: make
  7. #
  8. # As well as selecting the devices, you may have to change LLIBS and MLIBS 
  9. # as well (see below).
  10. #
  11. # Some machines use /bin/csh in Make (or use the envionment variable
  12. # SHELL. We want to us /bin/sh.
  13. #
  14. #SHELL = /bin/sh
  15. # SHELL = ksh
  16.  
  17. #
  18. #  Which cc to use
  19. #
  20. #CC = gcc
  21. CC = cc
  22.  
  23. #  The devices you wish to have compiled into the library and the
  24. #  location of the object files for each device relative to the 
  25. #  src directory. For each device defined there should be a 
  26. #  corresponding ../drivers/file.o in the DOBJS line.
  27. #
  28. #  Possible DEVICES and their object files are:
  29. #        -DPOSTSCRIPT    ../drivers/ps.o
  30. #        -DHPGL        ../drivers/hpdxy.o
  31. #        -DDXY        ../drivers/hpdxy.o
  32. #        -DTEK        ../drivers/tek.o
  33. #        -DSUN        ../drivers/sun.o    (Sunview that is)
  34. #        -DX11        ../drivers/X11.o
  35. #        -DNeXT        ../drivers/NeXT.o    (NeXTStep)
  36. #
  37. #DEVICES = -DPOSTSCRIPT -DHPGL -DTEK -DX11
  38. DEVICES = -DPOSTSCRIPT -DX11 -DAMIGA
  39. DOBJS = proj:vogl/drivers/ps.o proj:vogl/drivers/X11.o proj:vogl/drivers/amiga.o
  40. #
  41. # Where the fonts a going to live (For making the Hershey library)
  42. # (Remember /tmp usually gets cleared from time to time)
  43. #
  44. #FONTLIB = /usr/local/lib/hershey/
  45. #FONTLIB = /tmp/hfonts
  46.  
  47. # Amiga:
  48. FONTLIB = proj:vogl/hfonts
  49.  
  50. #
  51. #  For BSD type machines we need to use ranlib
  52. #
  53. #RANLIB = ranlib
  54. # If you have SYS5 then set RANLIB = "ar ts" or maybe "echo" in later versions
  55. RANLIB = echo
  56.  
  57. #
  58. # Set any Special floating point options here...
  59. #
  60. # On a SUN (use inline math functions, don't promote to double in expressions)
  61. #FLOATING_POINT = /usr/lib/libm.il -fsingle
  62.  
  63. # On a SUN3 with an mc68881 floating point chip
  64. #FLOATING_POINT = /usr/lib/libm.il -fsingle -f68881
  65.  
  66. #
  67. # On a NeXT     (for inline expansion of math primitives)
  68. #FLOATING_POINT = -DINLINE_MATH
  69.  
  70. # On an SGI
  71. #FLOATING_POINT = -float
  72.  
  73. # Or on a Decstation (running Ultrix of course)
  74. #FLOATING_POINT = -f
  75.  
  76. # The amiga:
  77. FLOATING_POINT = -f8
  78.  
  79. #
  80. # Global CFLAGS can be set here. These are the ones we use on a sun.
  81. #
  82. #  SUN4/SUN3
  83. #CFLAGS = -O4
  84.  
  85. # For SUNOS 3.5 set -DSUN_3_5
  86. #
  87. #CFLAGS = -O4 -DSUN_3_5
  88.  
  89. #
  90. # For SGI's
  91. #
  92. #CFLAGS = -DSYS5 -O
  93.  
  94. #
  95. # Or on an apollo... (-Wp make it use the 'other cpp')
  96. #CFLAGS = -O -Wp -M3000
  97.  
  98. #
  99. # Or an IBM RS6000
  100. #
  101. #CFLAGS = $(OS) -O -Q
  102.  
  103. #
  104. # NeXTStep....
  105. #
  106. #CFLAGS = -O -ObjC
  107.  
  108. # Most others....
  109. # CFLAGS = -O
  110.  
  111. # The Amiga (QuikFix, prototyping, 68020+)
  112. CFLAGS = -qf -wl -c2
  113.  
  114. #
  115. # Define F77 if you want the f77 examples.
  116. #F77 = f77
  117. #
  118. # You also define your f77 flags here too. These are the ones we used on sun
  119. #
  120. #FFLAGS = -g -w /usr/lib/libm.il
  121. #
  122. # Or on an apollo (We didn't have ftn)
  123. #F77 = 
  124. #FFLAGS = 
  125.  
  126. # Amiga, using Manx's Aztec C, don't need 4trash
  127. F77=
  128. FFLAGS=
  129.  
  130. #
  131. # Or on an IBM RS6000
  132. #
  133. #F77 = xlf
  134. #FFLAGS = -O -qextname
  135.  
  136. # The usual default...
  137. # FFLAGS = -O
  138. FFLAGS = 
  139.  
  140. #
  141. # The name of the library to install and where to put it.
  142. #
  143. LIB = libvogl.a
  144. #DEST = /usr/local/lib
  145. DEST = proj:vogl/lib
  146.  
  147.  
  148. #
  149. # Any other local libraries that are needed go here
  150. #
  151.  
  152. # SUN
  153. #LLIBS = -lsuntool -lsunwindow -lpixrect
  154. # X11
  155. # LLIBS = -lX11
  156. # SGI
  157. #LLIBS = -lgl_s
  158. # NeXT
  159. #LLIBS = -lNeXT_s
  160. # Amiga
  161. LLIBS = -lc
  162.  
  163. #
  164. # On the NeXT there is some kind of problem with using -lm when
  165. # linking. Leave LIBM blank in this case.
  166. #
  167.  
  168. # Usual:
  169. # LIBM = -lm
  170.  
  171. # Amiga
  172. LIBM = -lm8
  173.  
  174. LIBS = $(LLIBS) $(LIBM)
  175.  
  176. MCFLAGS = $(CFLAGS) $(FLOATING_POINT)
  177. MFFLAGS = $(FFLAGS)
  178.  
  179. all:
  180.     echo CC="$(CC) :" $(CC)
  181.     cd src; make -f Makefile \
  182.             CC="$(CC)" \
  183.             DEVICES="$(DEVICES)" \
  184.             MCFLAGS="$(MCFLAGS)" \
  185.             DOBJS="$(DOBJS)"\
  186.             RANLIB="$(RANLIB)"
  187.  
  188.     cd hershey/src; make -f Makefile \
  189.             CC="$(CC)" \
  190.             FONTLIB="$(FONTLIB)" \
  191.             MCFLAGS="$(MCFLAGS)" \
  192.             LIBS="$(LIBS)" \
  193.             RANLIB="$(RANLIB)"
  194.  
  195.     cd examples; make -f Makefile \
  196.             CC="$(CC)" \
  197.             MCFLAGS="$(MCFLAGS)" \
  198.             LIBS="$(LIBS)"
  199.  
  200.  
  201.     if test -n "$(F77)" ; \
  202.     then cd examples; make -f Makefile.f77 \
  203.             LIBS="$(LIBS)" \
  204.             MFFLAGS="$(MFFLAGS)" \
  205.             F77="$(F77)" ; \
  206.     fi ; exit 0
  207.  
  208. install:
  209.     cp src/$(LIB) $(DEST)
  210.     chmod 644 $(DEST)/$(LIB)
  211.     $(RANLIB) $(DEST)/$(LIB)
  212.  
  213. clean:
  214.     cd src; make clean
  215.     cd hershey/src; make clean
  216.     cd drivers; make clean
  217.     cd examples; make clean
  218.     cd examples; make -f Makefile.f77 clean
  219.  
  220. clobber:
  221.     cd src; make clobber
  222.     cd hershey/src; make clobber
  223.     cd drivers; make clobber
  224.     cd examples; make clobber
  225.     cd examples; make -f Makefile.f77 clobber
  226.